package com.newtouch.bxzs.common.base.model;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 企业客户信息实体类
 *
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2021/2/3 9:44</td>
 * <td>dingqianbin</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author dingqianbin
 * @version 1.0.0
 * @since 1.0.0
 */
@Data
@TableName(value = "ASSISTANT_ENTERPRISE_CUSTOMER")
@ApiModel(value = "企业客户信息实体类")
public class EnterpriseCustomer implements Serializable {

    private static final long serialVersionUID = -2712114045182831623L;

    /** 主键企业客户ID */
    @TableId(value = "ENTERPRISE_CUSTOMER_ID", type = IdType.ASSIGN_UUID)
    private String enterpriseCustomerId;

    /** 企业客户名称 */
    @TableField(value = "ENTERPRISE_CUSTOMER_NAME")
    private String enterpriseCustomerName;

    /** 企业客户名称全拼 */
    @TableField(value = "ENTERPRISE_CUSTOMER_NAME_FULL_SPELLING")
    private String enterpriseCustomerNameFullSpelling;

    /** 企业客户联系人姓名 */
    @TableField(value = "ENTERPRISE_CUSTOMER_LINKMAN_NAME")
    private String enterpriseCustomerLinkmanName;

    /** 企业客户联系人手机号 */
    @TableField(value = "ENTERPRISE_CUSTOMER_LINKMAN_PHONE")
    private String enterpriseCustomerLinkmanPhone;

    /** 统一社会信用代码 */
    @TableField(value = "UNIFIED_SOCIAL_CREDIT_CODE")
    private String unifiedSocialCreditCode;

    /** 企业客户电话 */
    @TableField(value = "ENTERPRISE_CUSTOMER_TELEPHONE")
    private String enterpriseCustomerTelephone;

    /** 企业类型 */
    @TableField(value = "ENTERPRISE_TYPE")
    private String enterpriseType;

    /** 企业地址 */
    @TableField(value = "ENTERPRISE_ADDRESS")
    private String enterpriseAddress;

    /** 企业注册资金 */
    @TableField(value = "ENTERPRISE_REGISTERED_CAPITAL")
    private BigDecimal enterpriseRegisteredCapital;

    /** 企业注册日期 */
    @TableField(value = "ENTERPRISE_REGISTERED_DATE")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "CST")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date enterpriseRegisteredDate;

    /** 企业注册地址 */
    @TableField(value = "ENTERPRISE_REGISTERED_ADDRESS")
    private String enterpriseRegisteredAddress;

    /** 企业经营范围 */
    @TableField(value = "ENTERPRISE_BUSINESS_SCOPE")
    private String enterpriseBusinessScope;

    /** 企业行业 */
    @TableField(value = "ENTERPRISE_INDUSTRY")
    private String enterpriseIndustry;

    /** 企业人数 */
    @TableField(value = "ENTERPRISE_EMPLOYEE_COUNT")
    private Integer enterpriseEmployeeCount;

    /** 企业法定代表人姓名 */
    @TableField(value = "ENTERPRISE_LEGAL_REPRESENTATIVE_NAME")
    private String enterpriseLegalRepresentativeName;

    /** 客户标签 */
    @TableField(value = "CUSTOMER_LABEL")
    private String customerLabel;

    /** 用户工号 */
    @TableField(value = "USER_JOB_NUMBER")
    private String userJobNumber;

    /** 创建用户ID */
    @TableField(value = "CREATE_USER_ID")
    private String createUserId;

    /** 创建时间 */
    @TableField(value = "CREATE_TIME")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CST")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 修改用户ID */
    @TableField(value = "UPDATE_USER_ID")
    private String updateUserId;

    /** 修改时间 */
    @TableField(value = "UPDATE_TIME")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "CST")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 删除状态 */
    @TableField(value = "IS_DELETE")
    @TableLogic(value = "0", delval = "1")
    private Boolean deleteFlag = false;

    /** 备注 */
    @TableField(value = "MEMO")
    private String memo;

}
